package com.vvlive.caibao.smartcity.base;

import com.vvlive.caibao.smartcity.bean.MeetingByMonth;
import com.vvlive.caibao.smartcity.utils.MeetingsController;

import java.util.Calendar;
import java.util.List;

/**
 * Created by zhj on 2015/11/6.
 */
public interface MeetingsListInterface {

    /**
     * Get meetings list
     * @return
     */
    List<MeetingByMonth> getMeetingsList();

    /**
     * Set meetings list
     * @param meetingsList
     */
    void setMeetingsList(List<MeetingByMonth> meetingsList);

    /**
     * Get MeetingsController
     * @return
     */
    MeetingsController getMeetingsController();

    /**
     * Get meetings when meetings are prepared
     * @param onMeetingsPreparedListener
     */
    void setOnMeetingsPreparedListener(OnMeetingsPreparedListener onMeetingsPreparedListener, Calendar calendar, int tag);

    /**
     *
     */
    interface OnMeetingsPreparedListener extends GetMeetingsInterface {
    }

    /**
     * Refresh meetings
     * @param onMeetingsRefreshListener
     */
    void refreshMeetings(OnMeetingsRefreshListener onMeetingsRefreshListener);

    /**
     *
     */
    interface OnMeetingsRefreshListener extends GetMeetingsInterface {
        /**
         *
         * @param code
         * @param msg
         */
        void onFailure(int code, String msg);
    }
}
